/**
 * Created by QianQi on 2016/4/13.
 */
$(function(){
    var oHideParams = $.getHideParams();// <body> 下隐藏域键值对，name 为键
    var oUrlParams = $.getUrlParams();// url 附加参数键值对
    var URLS = {};
    var DATA = {
        cus: [
            {"id": "zd000", "name": "总数据第 0 条"},
            {"id": "zd001", "name": "总数据第 1 条"},
            {"id": "zd002", "name": "总数据第 2 条"},
            {"id": "zd003", "name": "总数据第 3 条"},
            {"id": "zd004", "name": "总数据第 4 条"},
            {"id": "zd005", "name": "总数据第 5 条"},
            {"id": "zd006", "name": "总数据第 6 条"},
            {"id": "zd007", "name": "总数据第 7 条"},
            {"id": "zd008", "name": "总数据第 8 条"},
            {"id": "zd009", "name": "总数据第 9 条"},
            {"id": "zd010", "name": "总数据第 10 条"},
            {"id": "zd011", "name": "总数据第 11 条"},
            {"id": "zd012", "name": "总数据第 12 条"},
            {"id": "zd013", "name": "总数据第 13 条"}
        ]
    };
    var jqDatalist = $('.js-datalist'),// 绘制分页数据的容器
        oPagebarApi;// 分页 api
    // 顶部按钮点击事件
    var fTbtnsClick = function(){
        var jqThis = $(this);
        switch(jqThis.attr('data-type')){
        }
    };
    // 自定义绘制函数
    var fRenderCtrl = function(oPageInApi, api){
        return '<button type="button" class="btn btn-min btn-success" data-manu="ctrl" data-type="allData">控制台打印全部数据</button>' +
            ' <button type="button" class="btn btn-min" data-manu="ctrl" data-type="curData">控制台打印当前页数据</button>';
    };
    // 自定义事件绑定
    var fOnCtrlClick = function(e){
        var jqThis = $(this);
        switch(jqThis.attr('data-type')){
            case 'allData':
                console.log('全部数据:', oPagebarApi.fGetData());// 获取全部数据
                break;
            case 'curData':
                console.log('当前页数据:', oPagebarApi.fGetCurData());// 获取当前页数据
                break;
        }
    };
    // 分页数据返回后的绘制函数
    var fAfterFlip = function(datalist, pageObj, data){
        var str = '<div class="t_blue">当前第 ' + pageObj.curpage + ' 页，每页 ' + pageObj.percount + ' 条，共 ' + pageObj.totalcount + ' 条 ' + pageObj.totalpage + ' 页</div>';
        var startNo = (pageObj.curpage - 1) * pageObj.percount;// 当前页起始页码
        for(var i = 0, cur, len = datalist.length; i < len; i++){// 根据当前页数据重绘 dom
            cur = datalist[i];
            str += '<p>' + (startNo + i) + ': ' + cur['name'] + '</p>'
        }
        jqDatalist.html(str);
    };
    /** ============== **/
    $('.js-tbtns').on('click', 'button', fTbtnsClick);// 顶部按钮点击事件
    oPagebarApi = $('.js-pagebar').initPageBar({
        data: DATA.cus,
        per: 4,
        //perList:[],// 可选择的每页页码列表，若未定义则不可切换
        render: {// 自定义dom顺序
            left: ['per', 'page', 'go'],
            center: [fRenderCtrl],
            right: ['prev', 'next', 'total']
        },
        callback: {// 自定义事件绑定
            render: {
                ctrl: {
                    click: fOnCtrlClick
                }
            }
        },
        afterFlip: fAfterFlip// 每次翻页后的回调函数，datalist:当前页数据；pageObj:当前分页信息
    });
});
